package com.softeem.list.linkedList;

import java.util.LinkedList;

/**
 * 使用LinkedList模拟栈(先进后出)
 * 进出口是同一个
 */
public class MyStack {
    //存储元素的集合,底层使用双向链表来进行实现
    LinkedList<String> list = new LinkedList<String>();
    //模拟数据进栈
    //void addFirst(E e)
    //  在该列表开头插入指定的元素。
    public void push(String e){
        list.addFirst(e);
    }

    //模拟出栈
    public String pop(){
        return list.removeFirst();//删除栈顶的元素
    }
    public static void main(String[] args) {
        MyStack stack = new MyStack();
        stack.push("张三");
        stack.push("李四");
        stack.push("王麻子");

        //出栈
        while (stack.list.size() != 0) {
            System.out.println(stack.pop());
        }
    }
}
